home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 17 / CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso / CUCD / Programming / DiceSource / lib / amiga / h_mods.a < prev    next >
Text File  |  1994-02-01  |  611b  |  45 lines

  1.  
  2.         ;   MODS.A
  3.         ;
  4.         ;   (c)Copyright 1990, Matthew Dillon, All Rights Reserved
  5.         ;
  6.         ;   D0/D1 -> D0 signed divide
  7.         ;   32/32 -> 32 signed divide
  8.         ;
  9.         ;   HYPER function, cannot use PC-rel addressing
  10.  
  11.         section text,code
  12.  
  13.         xdef    __mods
  14.         xdef    _hyper__mods
  15.         xref    __divu
  16.  
  17. _hyper__mods:
  18. __mods:
  19.         tst.l    D1
  20.         bmi    ds10
  21.         tst.l    D0         ; numerator
  22.         bmi    ds20
  23.         jsr    __divu
  24.         move.l    D1,D0         ; remainder
  25.         rts
  26. ds10        neg.l    D1
  27.         tst.l    D0
  28.         bmi    ds30
  29. ds10n        jsr    __divu
  30.         neg.l    D1
  31.         move.l    D1,D0
  32.         rts
  33. ds20        neg.l    D0
  34.         jsr    __divu
  35.         neg.l    D1
  36.         move.l    D1,D0
  37.         rts
  38. ds30        neg.l    D0
  39.         jsr    __divu
  40.         move.l    D1,D0
  41.         rts
  42.  
  43.         END
  44.  
  45.